package com.example.springbootmybatis.service;

import com.example.springbootmybatis.common.PageResult;
import com.example.springbootmybatis.entity.UserTab;
import com.example.springbootmybatis.param.UserParam;

import java.util.List;

public interface IUserService {

    /**
     * 查询指定用户信息
     * @param id
     * @return
     */
    UserTab getUserByid(Integer id);

    /**
     * 查询全部用户信息
     * @return
     */
    List<UserTab> selectAllUser();

    /**
     * 新增用户信息
     * @param user
     */
    UserTab addUser(UserTab user);

    /**
     * 修改用户信息
     * @param user
     */
    UserTab updateUser(UserTab user);

    /**
     * 删除用户
     * @param id
     * @return
     */
    void del(Integer id);

    /**
     * 分页查询用户数据
     * @param pageNum
     * @param pageSize
     * @param userName
     * @return
     */
    PageResult getUserByPage(Integer pageNum, Integer pageSize, String userName);

    /**
     * 分页查询人员详细信息
     * @param userParam
     * @return
     */
    PageResult getUserDetailByPage(UserParam userParam);

    /**
     * 用户登录
     * @param user
     * @return
     */
    UserTab login(UserTab user);
}
